package com.xiaoshuidi.cloud.module.bpm.dal.dataobject.reserveticket;

import com.xiaoshuidi.cloud.framework.tenant.core.db.TenantBaseDO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.time.LocalDate;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.*;
import lombok.experimental.Accessors;

/**
 * 预约工单 DO
 *
 * @author 合房租赁
 */
@TableName("reserve_ticket")
@KeySequence("reserve_ticket_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Accessors(chain = true)
@NoArgsConstructor
@AllArgsConstructor
public class ReserveTicketDO extends TenantBaseDO {

    /**
     * 主键id
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * 申请人的用户编号
     */
    private Long userId;
    /**
     * 客户类型
     * 7.0.6版本弃用
     */
    private String customerType;
    /**
     * 客户姓名
     */
    private String customerName;
    /**
     * 性别 1:男 2:女
     */
    private String customerGender;
    /**
     * 联系方式
     */
    private String mobile;
    /**
     * 客户来源
     */
    private String customerOrigin;
    /**
     * 紧急程度
     * 7.0.6版本弃用
     */
    private String urgencyLevel;
    /**
     * 入住时间
     */
    private LocalDate checkInDate;
    /**
     * 预约日期
     */
    private LocalDate reserveDate;
    /**
     * 预约时间段前端数组下标，前端回显用
     */
    private Integer reserveTimeIndex;
    /**
     * 预约时间段-开始
     */
    private String reserveTimeStart;
    /**
     * 预约时间段-结束
     */
    private String reserveTimeEnd;
    /**
     * 租期(月)
     */
    private Byte rentTerm;
    /**
     * 最低金额
     * 7.0.6版本弃用
     */
    private BigDecimal priceMin;
    /**
     * 最高金额
     * 7.0.6版本弃用
     */
    private BigDecimal priceMax;
    /**
     * 地址
     */
    private String address;
    /**
     * 人数
     * 7.0.6版本弃用
     */
    private Byte peopleNum;
    /**
     * 租房数量
     * 7.0.6版本弃用
     */
    private Byte rentNum;
    /**
     * 门店id
     */
    private Long apartmentId;
    /**
     * 门店名
     */
    private String apartmentName;
    /**
     * 房型
     */
    private String houseType;
    /**
     * 房源id
     */
    private Long roomId;
    /**
     * 房源全名
     */
    private String roomFullName;
    /**
     * 跟进人员id
     */
    private Long followUpUserId;
    /**
     * 进度
     */
    private String progress;
    /**
     * 状态
     */
    private String status;
    /**
     * 跟进备注
     */
    private String remark;
    /**
     * 工单来源
     */
    private String ticketFrom;
    /**
     * 部门id
     */
    private Long deptId;
}
